Burn Severity · Canopy Moisture · SWIR2 vs SWIR1

NBR2 – Normalized Burn Ratio 2

NBR2 is a spectral index that uses the two short-wave infrared bands (SWIR2 and SWIR1) to highlight changes in canopy water content and burn severity. It is especially sensitive to very dry or severely burned areas.
مؤشر NBR2 (الاحتراق المُطَبَّع 2) يعتمد على الحزم تحت الحمراء قصيرة الموجة الأولى والثانية لتمييز الجفاف الشديد وشدة الحرائق وتغير محتوى المياه في الغطاء النباتي.

1. Scientific Definition

The Normalized Burn Ratio 2 (NBR2) exploits the differential response of vegetation and soils in the SWIR1 and SWIR2 regions. Severely burned or very dry areas show stronger reflectance in SWIR2 than in SWIR1, while moist vegetation tends to keep lower values.

Formula

A commonly used NBR2 definition is:

NBR2 = (SWIR2 − SWIR1) / (SWIR2 + SWIR1) Range: −1 → +1

  • SWIR1 – Short-Wave InfraRed band 1
  • SWIR2 – Short-Wave InfraRed band 2

Typical Interpretation

NBR2Interpretation
< 0 Moist surfaces / healthy vegetation / water
0 – 0.2 Moderately dry vegetation / mixed conditions
0.2 – 0.4 Dry vegetation / possible low–moderate burn impact
> 0.4 Very dry / highly burned areas, bare bright soil or ash

Thresholds are indicative and should be calibrated for each fire event or study area using reference data (pre/post fire imagery, field observations).

Main Applications

  • Mapping burn severity in forest and rangeland fires
  • Assessing canopy water content and drought stress
  • Supporting fire risk and recovery monitoring
  • Complementing NBR (NIR–SWIR2) in multi-index fire analysis

2. Data & Bands

Sentinel-2 (Recommended)

  • SWIR1: B11 (~1610 nm)
  • SWIR2: B12 (~2190 nm)
  • Resolution: 20 m

Landsat 8 / 9

  • SWIR1: B6
  • SWIR2: B7
  • Resolution: 30 m

Landsat 5 TM / 7 ETM+

  • SWIR1: B5
  • SWIR2: B7

Best Practices

  • Use surface reflectance products (SR) with atmospheric correction.
  • Mask clouds & cloud shadows with QA bands or cloud probability layers.
  • Compute NBR2 using post-fire imagery, and compare with pre-fire metrics (e.g. ΔNBR2) for severity mapping.
  • Combine NBR2 with NBR and NDVI/NDMI for a more complete fire impact analysis.

Suggested Palette

[ "#0b1120", "#1f2937", "#4b5563", "#f97316", "#facc15", "#fef9c3" ]

3. Google Earth Engine Code – NBR2 (SWIR2 − SWIR1)

// NBR2 using Sentinel-2 SR
// NBR2 = (SWIR2 - SWIR1) / (SWIR2 + SWIR1)
// Here: SWIR1 = B11, SWIR2 = B12

var roi = geometry;   // Draw AOI as 'geometry'
Map.centerObject(roi, 11);

// 1. Load Sentinel-2 surface reflectance
var s2 = ee.ImageCollection("COPERNICUS/S2_SR")
  .filterBounds(roi)
  .filterDate("2023-01-01", "2023-12-31")
  .filter(ee.Filter.lt("CLOUDY_PIXEL_PERCENTAGE", 20))
  .select(["B11","B12"]); // SWIR1, SWIR2

// 2. Median composite
var img = s2.median().clip(roi);

// 3. Compute NBR2
var nbr2 = img.expression(
  "(S2 - S1) / (S2 + S1)",
  {
    "S1": img.select("B11"), // SWIR1
    "S2": img.select("B12")  // SWIR2
  }
).rename("NBR2");

// 4. Visualization
var vis = {
  min: -1,
  max:  1,
  palette: ["#0b1120","#1f2937","#4b5563","#f97316","#facc15","#fef9c3"]
};

Map.addLayer(nbr2, vis, "NBR2 (SWIR2 - SWIR1)");

// Optional: simple high-burn mask (e.g. NBR2 > 0.3)
var highBurn = nbr2.gt(0.3).selfMask();
Map.addLayer(
  highBurn,
  {palette:["#f97316"]},
  "High Burn / Very Dry (NBR2 > 0.3)",
  false
);

// 5. Export NBR2 as GeoTIFF
Export.image.toDrive({
  image: nbr2,
  description: "NBR2_Sentinel2",
  fileNamePrefix: "NBR2_SWIR2_SWIR1",
  region: roi,
  scale: 20,        // match SWIR resolution
  crs: "EPSG:4326",
  maxPixels: 1e13
});